package com.djzhou.gmms.dao.base;

import java.util.HashMap;
import java.util.List;

import com.djzhou.gmms.model.entity.Entity;
import com.djzhou.gmms.model.entity.PageBean;

public interface UtilDAO<T extends Entity> {
	/**
	 * 添加方法
	 * @param t
	 *
	 */
	void addUtil(T t);
	/**
	 * 修改方法
	 * @param t
	 *
	 */
	void updateUtil(T t);
	/**
	 * 删除方法
	 * @param t
	 *
	 */
	void deleteUtil(T t);
	/**
	 * 删除方法
	 * @param id
	 *
	 */
	void deleteUtil(Integer id);
	/**
	 * 分页查询
	 * @param hashMap 条件
	 * @param pageSize 每页显示数
	 * @param currentPage 当前页
	 * @return
	 *
	 */
	PageBean<T> queryPageBeanUtil(HashMap<String, Object> hashMap,int pageSize, int currentPage);
	/**
	 * 通过条件获取集合
	 * @param hashMap
	 * @return
	 *
	 */
	List<T> queryListUtil(HashMap<String, Object> hashMap);
	/**
	 * 通过ID查询
	 * @return
	 *
	 */
	T queryByIdUtil(Integer id);
}
